BaseFSMState = BaseClass("BaseFSMState")

function BaseFSMState:__init(stateName)
    self.stateName = stateName
    self.entryCondition = nil
end

function BaseFSMState:SetEntryCondition(condition)
    self.entryCondition = condition
end

function BaseFSMState:CheckEntryCondition()
    if (self.entryCondition ~= nil) then
        return self.entryCondition()
    end

    return true
end

function BaseFSMState:OnEnter()
end

function BaseFSMState:OnExit()
end

function BaseFSMState:OnUpdate()
end